An enterprise-level computing environment can support multiple actors, e.g. business analysts, architects, developers, and administrators. Each actor can supports a specific role in the environment, and conflicts may arise between those roles.
For example, an architect focused on ensuring that the applications within the environment adhere to strict requirements and dependencies may deviate from the original business plan. Additionally a developer or administrator updating a particular module may inadvertently jeopardize the architectural integrity of the application.
It is important to maintain the integrity of software code among the different stages of the lifecycle of an enterprise-level system, e.g. business requirements, architectural constraints, and development/administration changes.